package com.tang4j.mapper;

import com.tang4j.core.mapper.AbstractMapper;
import com.tang4j.model.response.ThSysUserDto;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * <p>
 * 用户表 Mapper 接口
 * </p>
 *
 * @author saber
 * @since 2019-11-12
 */
@Repository
public interface ThSysUserMapper extends AbstractMapper<ThSysUserDto> {

    /**
     * 新增用户与部门的绑定数据
     * @param deptId 部门id
     * @param userId 用户id
     */
    void insertUserDept(@Param("deptId") String deptId,@Param("userId") String userId);

    /**
     * 修改用户与部门的绑定数据
     * @param deptId 部门id
     * @param userId 用户id
     */
    void updateUserDept(@Param("deptId") String deptId,@Param("userId") String userId);

    int updateById(ThSysUserDto userDto);

    /**
     * 修改密码
     * @param userId 用户id
     * @param password 用户密码
     */
    int resetPassword(@Param("userId") String userId,@Param("password")  String password);

    /**
     * 获取所有部门及其用户
     * @return ThSysUserDto
     */
    List<ThSysUserDto> selectDeptUserList();


}
